package cn.bearspark.framework.web.starter.util;

import java.util.List;

/**
 * 断言的工具类
 *
 * @author f
 */
public class AssertUtil {

    /**
     * 希望集合不为空，如果为空，则抛出异常
     *
     * @param list 待检验集合
     * @param msg  异常的信息
     */
    public static void isNotEmpty(List<?> list, String msg) {
        if (list == null || list.isEmpty()) {
            throw new RuntimeException(msg);
        }
    }

    /**
     * 希望条件为真，如果为假，则抛出异常
     *
     * @param condition 待检验条件
     * @param msg       异常的信息
     */
    public static void isTrue(Boolean condition, String msg) {
        if (!condition) {
            throw new RuntimeException(msg);
        }
    }

    /**
     * 希望对象不为 null，如果为 null，则抛出异常
     *
     * @param object 待检验对象
     * @param msg    异常的信息
     */
    public static void isNotNull(Object object, String msg) {
        if (object == null) {
            throw new RuntimeException(msg);
        }
    }

    /**
     * 希望字符串不为空，如果为空，则抛出异常
     *
     * @param string 待检验字符串
     * @param msg    异常的信息
     */
    public static void isNotBlank(String string, String msg) {
        if (string == null || string.trim().isEmpty()) {
            throw new RuntimeException(msg);
        }
    }

}
